﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ElevateThis
{
    /// <summary>
    /// Arguments passed into this application via the command line
    /// </summary>
    public class Options
    {
        public Options()
        {
            LaunchState = LaunchStates.NotElevated;
            BatchFile = String.Empty;
            ArgumentList = String.Empty;
            WorkingDir = String.Empty;
        }

        /// <summary>
        /// Used by this program to tell itself what stage of the launch we're at
        /// </summary>
        public LaunchStates LaunchState { get; set; }

        /// <summary>
        /// File name of the batch file.  Must include the path if WorkingDir is not specified
        /// </summary>
        public string BatchFile { get; set; }

        /// <summary>
        /// Arguments to pass to the batch file
        /// </summary>
        public string ArgumentList { get; set; }

        /// <summary>
        /// Working directory for the batch file.  Usually the folder containing the batch file itself.
        /// Can be omitted if the BatchFile contains a full path
        /// </summary>
        public string WorkingDir { get; set; }

    }
}
